document.addEventListener('DOMContentLoaded', function() { // Animação ao carregar elementos const elements = document.querySelectorAll('.specialty-card, .benefit-item'); const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.style.opacity = '1'; entry.target.style.transform = 'translateY(0)'; } }); }, { threshold: 0.1 }); elements.forEach(element => { element.style.opacity = '0'; element.style.transform = 'translateY(20px)'; element.style.transition = 'opacity 0.6s ease, transform 0.6s ease'; observer.observe(element); }); // Funcionalidade do formulário const contactForm = document.getElementById('contactForm'); const formMessage = document.getElementById('formMessage'); if (contactForm) { contactForm.addEventListener('submit', function(e) { e.preventDefault(); // Pegar valores do formulário const nome = document.getElementById('nome').value.trim(); const telefone = document.getElementById('telefone').value.trim(); const email = document.getElementById('email').value.trim(); const mensagem = document.getElementById('mensagem').value.trim(); // Validação básica if (!nome || !telefone || !email) { showMessage('Por favor, preencha todos os campos obrigatórios.', 'error'); return; } // Validar email const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; if (!emailRegex.test(email)) { showMessage('Por favor, insira um e-mail válido.', 'error'); return; } // Validar telefone (básico) const telefoneRegex = /^[\d\s\-\(\)]+$/; if (!telefoneRegex.test(telefone)) { showMessage('Por favor, insira um telefone válido.', 'error'); return; } // Se passou na validação, mostrar mensagem de sucesso showMessage('Mensagem enviada com sucesso! Entraremos em contato em breve.', 'success'); // Limpar formulário contactForm.reset(); // Opcionalmente, você pode enviar os dados para um servidor aqui // Por enquanto, apenas mostramos a mensagem de sucesso console.log('Dados do formulário:', { nome: nome, telefone: telefone, email: email, mensagem: mensagem }); // Esconder mensagem após 5 segundos setTimeout(() => { formMessage.style.display = 'none'; }, 5000); }); } function showMessage(text, type) { formMessage.textContent = text; formMessage.className = 'form-message ' + type; formMessage.style.display = 'block'; } // Máscara para telefone const telefoneInput = document.getElementById('telefone'); if (telefoneInput) { telefoneInput.addEventListener('input', function(e) { let value = e.target.value.replace(/\D/g, ''); if (value.length > 0) { if (value.length <= 2) { value = '(' + value; } else if (value.length <= 7) { value = '(' + value.substring(0, 2) + ') ' + value.substring(2); } else { value = '(' + value.substring(0, 2) + ') ' + value.substring(2, 7) + '-' + value.substring(7, 11); } } e.target.value = value; }); } console.log('Site Imóveis Anápolis GO carregado com sucesso!'); });